import store from '@/store'
// 第一种写法 ：导入Vue 直接使用Vue.directive注册全局指令
// import Vue from 'vue'

// Vue.directive('imgerror', {
//   // 当使用该指令的 dom插入到页面中后 就会执行inserted这个函数
//   // el：使用了该指令的那个标签
//   // binding： 从外部传过来的值  值放在binding.value属性中
//   inserted(el, binding) {
//     // console.log(el)
//     // console.log(binding.value)
//     // onerror 是当图片链接加载不成功的时候 会执行这个事件  后面赋值的是个函数
//     el.onerror = function() {
//       el.src = binding.value
//     }
//   }
// })

// 第二种写法  只导出指令中配置的那一部分（导出个对象）
export const imgerror = {
  // 当使用该指令的 dom插入到页面中后 就会执行inserted这个函数
  // el：使用了该指令的那个标签
  // binding： 从外部传过来的值  值放在binding.value属性中
  inserted(el, binding) {
    // console.log(el)
    // console.log(binding.value)
    // onerror 是当图片链接加载不成功的时候 会执行这个事件  后面赋值的是个函数
    el.onerror = function() {
      el.src = binding.value
    }
  }
}

export const checkPermission = {
  inserted(el, binding) {
    // binding.value 权限标识
    // 用户所拥有的的按钮级别的权限 vuex
    const roles = store.getters.roles
    if (!roles?.points?.includes(binding.value)) {
      // 隐藏当前按钮
      // el.style.display = 'none'  不好
      el.parentNode.removeChild(el)
    }
  }
}

